<?
//визначаємо функцію сортування за зростанням
function fieldAsc ($x,$y) {
if($x[field] == $y[field]) return 0;
if($x[field] < $y[field]) return -1; return 1;
}

//визначаємо функцію сортування за зростанням
function fieldDesc ($x,$y) {
if($x[field] == $y[field]) return 0;
if($x[field] < $y[field]) return 1; return -1;
}

//змінні для сортування за замовчуванням
if(empty($_GET[sort])) {$_GET[sort] = "desc";} // asc - по возрастанию, desc - по убыванию
if(empty($_GET[column])) {$_GET[column] = "id";} // check_result - по результату проверки
// check_date - за датою і часом, category - за категорією, nick - по nicknam'у

//сортування за спаданням для колонки id за замовчуванням
if($_GET[sort] == desc AND $_GET[column] == id) {
$file = file("../base.dat");
$fp = fopen("../base.dat", "w");
flock($fp, LOCK_EX);
for($i=0;$i<count($file);$i++) {
list($id,$nick,$url,$mail,$category,$htmltext,$htmlimage,$urlink,$check_result,$check_next,$ip,$check_date) = explode("|", $file[$i]);
$tmp[$i] = array (field => $id, ext => "$nick|$url|$mail|$category|$htmltext|$htmlimage|$urlink|$check_result|$check_next|$ip|$check_date");
}
usort($tmp, fieldDesc);
foreach($tmp as $val) fputs ($fp, "$val[field]|$val[ext]");
flock($fp, LOCK_UN);
fclose($fp);
} //сортування за спаданням для колонки id за замовчуванням

//сортування за зростанням для колонки check_date
if($_GET[sort] == asc AND $_GET[column] == check_date) {
$file = file("../base.dat");
$fp = fopen("../base.dat", "w");
flock($fp, LOCK_EX);
for($i=0;$i<count($file);$i++) {
list($id,$nick,$url,$mail,$category,$htmltext,$htmlimage,$urlink,$check_result,$check_next,$ip,$check_date) = explode("|", $file[$i]);
$tmp[$i] = array (field => $check_date, ext => "$id|$nick|$url|$mail|$category|$htmltext|$htmlimage|$urlink|$check_result|$check_next|$ip");
}
usort($tmp, fieldAsc);
foreach($tmp as $val) fputs ($fp, "$val[ext]|$val[field]");
flock($fp, LOCK_UN);
fclose($fp);
} // сортування за зростанням для колонки check_date

// сортування за спаданням для колонки check_date
if($_GET[sort] == desc AND $_GET[column] == check_date) {
$file = file("../base.dat");
$fp = fopen("../base.dat", "w");
flock($fp, LOCK_EX);
for($i=0;$i<count($file);$i++) {
list($id,$nick,$url,$mail,$category,$htmltext,$htmlimage,$urlink,$check_result,$check_next,$ip,$check_date) = explode("|", $file[$i]);
$tmp[$i] = array (field => $check_date, ext => "$id|$nick|$url|$mail|$category|$htmltext|$htmlimage|$urlink|$check_result|$check_next|$ip");
}
usort($tmp, fieldDesc);
foreach($tmp as $val) fputs ($fp, "$val[ext]|$val[field]");
flock($fp, LOCK_UN);
fclose($fp);
} // сортування за спаданням для колонки check_date


// сортування за зростанням для колонки check_result
if($_GET[sort] == asc AND $_GET[column] == check_result) {
$file = file("../base.dat");
$fp = fopen("../base.dat", "w");
flock($fp, LOCK_EX);
for($i=0;$i<count($file);$i++) {
list($id,$nick,$url,$mail,$category,$htmltext,$htmlimage,$urlink,$check_result,$check_next,$ip,$check_date) = explode("|", $file[$i]);
$tmp[$i] = array (field => $check_result, ext => "$id|$nick|$url|$mail|$category|$htmltext|$htmlimage|$urlink", extn => "$check_next|$ip|$check_date");
}
usort($tmp, fieldAsc);
foreach($tmp as $val) fputs ($fp, "$val[ext]|$val[field]|$val[extn]");
flock($fp, LOCK_UN);
fclose($fp);
} //  сортування за зростанням для колонки check_result

// сортування за спаданням для колонки check_result
if($_GET[sort] == desc AND $_GET[column] == check_result) {
$file = file("../base.dat");
$fp = fopen("../base.dat", "w");
flock($fp, LOCK_EX);
for($i=0;$i<count($file);$i++) {
list($id,$nick,$url,$mail,$category,$htmltext,$htmlimage,$urlink,$check_result,$check_next,$ip,$check_date) = explode("|", $file[$i]);
$tmp[$i] = array (field => $check_result, ext => "$id|$nick|$url|$mail|$category|$htmltext|$htmlimage|$urlink", extn => "$check_next|$ip|$check_date");
}
usort($tmp, fieldDesc);
foreach($tmp as $val) fputs ($fp, "$val[ext]|$val[field]|$val[extn]");
flock($fp, LOCK_UN);
fclose($fp);
} // сортування за спаданням для колонки check_result


// сортування за зростанням для колонки category
if($_GET[sort] == asc AND $_GET[column] == category) {
$file = file("../base.dat");
$fp = fopen("../base.dat", "w");
flock($fp, LOCK_EX);
for($i=0;$i<count($file);$i++) {
list($id,$nick,$url,$mail,$category,$htmltext,$htmlimage,$urlink,$check_result,$check_next,$ip,$check_date) = explode("|", $file[$i]);
$tmp[$i] = array (field => $category, ext => "$id|$nick|$url|$mail", extn => "$htmltext|$htmlimage|$urlink|$check_result|$check_next|$ip|$check_date");
}
usort($tmp, fieldAsc);
foreach($tmp as $val) fputs ($fp, "$val[ext]|$val[field]|$val[extn]");
flock($fp, LOCK_UN);
fclose($fp);
} // сортування за зростанням для колонки category

// сортування за спаданням для колонки category
if($_GET[sort] == desc AND $_GET[column] == category) {
$file = file("../base.dat");
$fp = fopen("../base.dat", "w");
flock($fp, LOCK_EX);
for($i=0;$i<count($file);$i++) {
list($id,$nick,$url,$mail,$category,$htmltext,$htmlimage,$urlink,$check_result,$check_next,$ip,$check_date) = explode("|", $file[$i]);
$tmp[$i] = array (field => $category, ext => "$id|$nick|$url|$mail", extn => "$htmltext|$htmlimage|$urlink|$check_result|$check_next|$ip|$check_date");
}
usort($tmp, fieldDesc);
foreach($tmp as $val) fputs ($fp, "$val[ext]|$val[field]|$val[extn]");
flock($fp, LOCK_UN);
fclose($fp);
} // сортування за спаданням для колонки category


// сортування за зростанням для колонки nick
if($_GET[sort] == asc AND $_GET[column] == nick) {
$file = file("../base.dat");
$fp = fopen("../base.dat", "w");
flock($fp, LOCK_EX);
for($i=0;$i<count($file);$i++) {
list($id,$nick,$url,$mail,$category,$htmltext,$htmlimage,$urlink,$check_result,$check_next,$ip,$check_date) = explode("|", $file[$i]);
$tmp[$i] = array (field => $nick, ext => "$id", extn => "$url|$mail|$category|$htmltext|$htmlimage|$urlink|$check_result|$check_next|$ip|$check_date");
}
usort($tmp, fieldAsc);
foreach($tmp as $val) fputs ($fp, "$val[ext]|$val[field]|$val[extn]");
flock($fp, LOCK_UN);
fclose($fp);
} // сортування за зростанням для колонки nick

//  сортування за спаданням для колонки nick
if($_GET[sort] == desc AND $_GET[column] == nick) {
$file = file("../base.dat");
$fp = fopen("../base.dat", "w");
flock($fp, LOCK_EX);
for($i=0;$i<count($file);$i++) {
list($id,$nick,$url,$mail,$category,$htmltext,$htmlimage,$urlink,$check_result,$check_next,$ip,$check_date) = explode("|", $file[$i]);
$tmp[$i] = array (field => $nick, ext => "$id", extn => "$url|$mail|$category|$htmltext|$htmlimage|$urlink|$check_result|$check_next|$ip|$check_date");
}
usort($tmp, fieldDesc);
foreach($tmp as $val) fputs ($fp, "$val[ext]|$val[field]|$val[extn]");
flock($fp, LOCK_UN);
fclose($fp);
} //  сортування за спаданням для колонки nick
?>